home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 #1 / Ham Radio 2000.iso / ham2000 / packet / p_aa4re / bb212src / bbwin.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1992-02-16  |  4.6 KB  |  137 lines

  1. (*===========================================================================*)
  2. (* Window routines                                                           *)
  3. (*                                                                           *)
  4. (*   Copyright 1988, 1989, 1990, 1991 by H. Roy Engehausen.  All rights      *)
  5. (*   reserved.                                                               *)
  6. (*                                                                           *)
  7. (*===========================================================================*)
  8.  
  9. {$DEFINE POINT_CHK}
  10. {$UNDEF  POINT_CHK}
  11. {$DEFINE LOOP_POINT_CHK}
  12. {$DEFINE FREE_CHK}
  13. {$UNDEF DEBUG} (* For writing *)
  14.  
  15. UNIT BBWIN;
  16.  
  17. INTERFACE
  18.  
  19. CONST
  20.  
  21.   window_reset    = 0;
  22.   window_connect  = 1;
  23.   window_monitor  = 2;
  24.   window_operator = 3;
  25.  
  26.   window_segments      = 2;
  27.   window_full_screen   = 0;
  28.   window_top_screen    = 1;
  29.   window_bottom_screen = 2;
  30.  
  31. (*----- In BBWINAD ----- *)
  32.  
  33. PROCEDURE window_select(window_number:BYTE);
  34. PROCEDURE window_activate(window_number:BYTE);
  35. PROCEDURE window_deactivate(window_number:BYTE);
  36. PROCEDURE window_swap;
  37. PROCEDURE window_clear(window_number : BYTE);
  38.  
  39. (*----- In BBWINW ----- *)
  40.  
  41. PROCEDURE window_write(put_prefix, put_string : STRING);
  42. PROCEDURE window_write_critical(put_prefix, put_string : STRING);
  43. PROCEDURE window_write_critical_i(put_prefix : STRING; put_number : LONGINT);
  44.  
  45. (*----- In BBWINST ----- *)
  46.  
  47. PROCEDURE window_status_line(status_string : STRING);
  48.  
  49. (*----- In BBWINS ----- *)
  50.  
  51. PROCEDURE scr_window(up_or_down : BOOLEAN; number_of_lines : WORD);
  52.  
  53. (*----- In BBWINM1 ----- *)
  54.  
  55. PROCEDURE color(parm:WORD);
  56. PROCEDURE window_erase_eol(wn : BYTE);
  57. FUNCTION  window_cursor_update(new_place : BYTE) : BYTE;
  58. PROCEDURE window_cursor_size(cursor_size : BOOLEAN);
  59.  
  60. (*----- In BBWINM3 ----- *)
  61.  
  62. FUNCTION  get_window_x(window_number : BYTE) : WORD;
  63. FUNCTION  get_window_y(window_number : BYTE) : WORD;
  64. FUNCTION  who_is_in_window (this_location : BYTE) : BYTE;
  65. PROCEDURE window_refresh(w_no : BYTE);
  66.  
  67. (*===========================================================================*)
  68. (* Global variables                                                          *)
  69. (*===========================================================================*)
  70.  
  71. {$I BBWING.PAS}
  72.  
  73. IMPLEMENTATION
  74.  
  75. USES
  76.   CRT,
  77.   DOS,
  78.   bbbug,
  79.   bbdummy,
  80.   bbdump,
  81.   bbmisc3,
  82.   bbstack,
  83.   bbstr;
  84.  
  85. {$DEFINE DEPTH}
  86.  
  87. (*===========================================================================*)
  88. (* Forwards                                                                  *)
  89. (*===========================================================================*)
  90.  
  91. PROCEDURE put_bot_line (in_w : window_data_ptr; more_to_come : BOOLEAN);
  92.                                                                        FORWARD;
  93.  
  94. (*===========================================================================*)
  95. (* Activate/deactivate/select                                                *)
  96. (*===========================================================================*)
  97.  
  98. {$I BBWINAD.PAS}
  99.  
  100. (*===========================================================================*)
  101. (* Status line                                                               *)
  102. (*===========================================================================*)
  103.  
  104. {$I BBWINST.PAS}
  105.  
  106. (*===========================================================================*)
  107. (* Miscellaneous # 1 -- Cursor control/Erase EOL/Color                       *)
  108. (*===========================================================================*)
  109.  
  110. {$I BBWINM1.PAS}
  111.  
  112. (*===========================================================================*)
  113. (* Miscellaneous # 2 -- Find actual window top/Get new window line           *)
  114. (*===========================================================================*)
  115.  
  116. {$I BBWINM2.PAS}
  117.  
  118. (*===========================================================================*)
  119. (* Miscellaneous # 3 -- Get x,y, who is in, refresh                          *)
  120. (*===========================================================================*)
  121.  
  122. {$I BBWINM3.PAS}
  123.  
  124. (*===========================================================================*)
  125. (* Write                                                                     *)
  126. (*===========================================================================*)
  127.  
  128. {$I BBWINW.PAS}
  129.  
  130. (*===========================================================================*)
  131. (* Scroll                                                                    *)
  132. (*===========================================================================*)
  133.  
  134. {$I BBWINS.PAS}
  135.  
  136. END.
  137.